package com.smartfactory.sail.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.smartfactory.sail.dto.DeviceUseStatusDto;
import com.smartfactory.sail.entity.Device;
import com.smartfactory.sail.entity.enums.DeviceStatusEnum;
import com.smartfactory.sail.vo.PageParam;
import com.smartfactory.sail.vo.device.ListDeviceResp;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 设备信息 服务类
 * </p>
 *
 * @author 王巨壁
 * @since 2019-07-24
 */
public interface IDeviceService extends IService<Device> {
    IPage<ListDeviceResp> getListAndPages(Map<String,Object> queryParam, PageParam pageParam);

    List<Device> getDeviceTypes();

    boolean updateNextMaintenanceDateById(Long id);

    void updateStatus(Long id, DeviceStatusEnum status);

    DeviceUseStatusDto getDeviceUseStatus();

}
